﻿using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;

namespace Thor.Common
{
    public interface IProviderRepository : IRepository
    {
        /// <summary>
        /// Inserts files into the provider's repository.
        /// </summary>
        /// <param name="files"></param>
        void InsertFiles(List<ProviderFile> files);

        /// <summary>
        /// Updates files in the provider's repository.
        /// </summary>
        /// <param name="files"></param>
        void UpdateFiles(List<ProviderFile> files);

        /// <summary>
        /// Deletes files from the provider's repository.
        /// </summary>
        void DeleteFiles();

        /// <summary>
        /// Gets all files from the provider's repository.
        /// </summary>
        /// <returns></returns>
        List<ProviderFile> FetchFiles();
    }
}
